diff options
| author | Adam Soltys <[email protected]> | 2025-01-20 00:05:30 -0800 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2025-01-20 00:05:33 -0800 |
| commit | 494fa791c93297917cf3247b561d736934de805c (patch) | |
| tree | b92bbbabe7eed8cde7b9d251cfcb08221689cc83 /src/routes/(app)/[username]/(profile)/notes | |
| parent | 684d5fe5643d481c4904a1323ae0a257c267b87b (diff) | |
| download | coinos-ui-494fa791c93297917cf3247b561d736934de805c.tar.gz coinos-ui-494fa791c93297917cf3247b561d736934de805c.zip | |
nostr routes
Diffstat (limited to 'src/routes/(app)/[username]/(profile)/notes')
| -rw-r--r-- | src/routes/(app)/[username]/(profile)/notes/+page.svelte | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/routes/(app)/[username]/(profile)/notes/+page.svelte b/src/routes/(app)/[username]/(profile)/notes/+page.svelte new file mode 100644 index 00000000..0591a881 --- /dev/null +++ b/src/routes/(app)/[username]/(profile)/notes/+page.svelte @@ -0,0 +1,39 @@ +<script lang="ts"> + import Event from "$comp/Event.svelte"; + import { get, post } from "$lib/utils"; + import { onMount } from "svelte"; + import { Relay } from "nostr-tools/relay"; + import { ignore } from "$lib/store"; + + let { data } = $props(); + let { subject } = $derived(data); + let events = $state([]); + onMount(async () => { + const relay = await Relay.connect("wss://relay.primal.net"); + const subscription = relay.subscribe( + [{ kinds: [1], authors: [subject.pubkey], limit: 20 }], + { + async onevent(event) { + // console.log(event); + const { parts, names } = await post("/post/parseEvent", { event }); + event.author = await get(`/api/users/${event.pubkey}`); + event.parts = parts; + event.names = names; + let { content, pubkey } = event; + events.push(event); + if (events.length > 20) events.shift(); + }, + }, + ); + }); +</script> + +<div class="container px-4 max-w-xl mx-auto space-y-5"> + <h1 class="px-3 md:px-0 text-center text-3xl md:text-4xl font-semibold"> + Events + </h1> + + {#each events as event} + <Event {event} minimal={true} /> + {/each} +</div> |
